home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 October: Mac OS SDK / Dev.CD Oct 96 SDK / Dev.CD Oct 96 SDK2.toast / Development Kits (Disc 2) / OpenDoc Development Framework / Documentation / Development Notes / Known Problems < prev    next >
Encoding:
Text File  |  1996-08-16  |  9.3 KB  |  215 lines  |  [TEXT/ttxt]

  1. OpenDoc
  2. Development
  3. Framework
  4.                                                                                                                                                                                          
  5. Known Problems 
  6. ODF Release 1                                                                                                                                                                  
  7.  
  8. The following is a list of the known problems in this release of ODF.  This includes the Radar Bug Tracking number, the bug title, details of the problem, and, in some cases,  a workaround.
  9.  
  10.  
  11. 1291628
  12. Screen not updated behind print dialogs
  13.  
  14. When using QuickDraw GX printing...
  15. — Open ODFDraw by double clicking its stationery
  16. — Choose "Page Setup..." from the Document menu to show the page setup dialog
  17. — Move the dialog box
  18. The screen area under the movable dialog box doesn't get updated. This goes for both the part of the screen covered by the ODFDraw document window and the parts of the screen that are covered by the windows of other applications.
  19. The print job dialog has the same problem. 
  20.  
  21.  
  22. 1269330
  23. ODFDraw does not call ODFacet::DrawnIn() when embedded in offscreen canvas
  24.  
  25. When ODFDraw draws asynchonously (in responce to MouseDown) it does not call ODFacet::DrawnIn().  This means the result of mouse down actions do not show up when the part is embedded in an offscreen canvas.
  26. I did not check other example parts, but they may not work either.
  27. To be more specific:  Shapes are drawn, but shape handles (resulting from selection changes) are not.
  28.  
  29.  
  30. 1307571
  31. FW_CPolys needs more functionality
  32.  
  33. 1) FW_CPolys have no "InsertPoint"/"RemovePoints" methods: working with static polys is useless.
  34.  
  35. Unfortunately, it is not easy to add this with some subclassing: fields like fCount are private and there is no Setter method (in  FW_CPolygonRep).
  36.  
  37.  
  38. 1322787
  39. Scrolling Focus
  40.  
  41. ODF Release 1 doesn't support the scrolling focus API.
  42.  
  43.  
  44. 1328076
  45. Button should activate itself if it's at the root?
  46.  
  47. When opened at the root, there is no "About ODFButton". Maybe a button should activate itself if it's at the root.
  48.  
  49.  
  50. 1330884
  51. ChangeKind not Implemented
  52.  
  53. ODF Release 1 doesn't support the ChangeKind API.
  54.  
  55.  
  56. 1331222
  57. No FW_CBitmap::GetColor(x,y)
  58.  
  59. To obtain a color of the bitmap at the particular point you need the FW_CBitmap::GetColor(x,y) API.
  60.  
  61.  
  62. 1331797
  63. Arrow keys in FW_CEditView not HI compliant
  64.  
  65. There are the following problems with how arrow key selection works right now:
  66.  
  67. • If you select a block of text, then press the left or the right arrow key, the cursor should move to the beginning (end) of the original selection. Right now, it moves one character away from the original selection.
  68. • If you hold down the shift key and press the left or right arrow key, the selection should be extended in that direction. Right now, shift-arrow works just like arrow.
  69.  
  70.  
  71. 1332622
  72. Crash when getting window position
  73.  
  74. I wanted to get the position of a floating window before it was deleted, so I called GetWindowPosition right before deleting it in ReleaseAll.  This caused a crash in FW_GetWindowBorderSize.  I haven't tracked this any further, as I probably won't be doing this in this manner eventually, but it seems that the FW_CWindow object can get into an ambiguous state before it is deleted that causes a call like this into it to crash.
  75.  
  76.  
  77. 1330586
  78. FW_CEditView doesn't use its fMaxChars field
  79.  
  80. The maximum number of chars entered in an edit-view can be passed to the ctor, but is ignored for now.
  81.  
  82.  
  83. 1334227
  84. Apple menu is enabled when dialog is shown
  85.  
  86. When a modal dialog is shown by ODF (including one that isn't movable), the Apple menu is still enabled. You can still show the about box. 
  87.  
  88. If you choose, say, a control panel from the Apple menu, the program will beep. Then, when you close the dialog, the Finder will launch the control panel.
  89.  
  90. Comment:
  91. You're right about non-moveable modal dialogs, the Apple menu should be disabled  (For moveable  modal dialogs the OpenDoc Programmer's Guide says on page 246 that the Apple menu should stay enabled).
  92.  
  93. I changed FW_CMenuBar::MacEnableMenuBar to include the Apple menu and added an argument in FW_CPart::PrivEnabledMenuBar() to enabled the Apple menu for moveable dialogs
  94.  
  95.  
  96. 1341357
  97. Scroll bars are drawn during activate event even if they are invisible
  98.  
  99.  FW_CScrollBar::DoActivateEvent doesn't check the Visible flag of scroll bars before drawing them during window activate events.   
  100.  
  101. Work-around: subclass FW_CScrollBar and modify DoActivateEvent, or patch the framework directly.
  102.  
  103.  
  104. 1329673
  105. ListBox scrollbar bug: Mouse location may be off a few pixels when clicking in.
  106.  
  107. When clicking in a list box scrollbar the mouse location may be offset by a few pixels. (should not be more than 8 pixels) Sometimes this causes the scrollbar to not respond to the click because the mouse is handled as being outside the scrollbar rectangle.
  108.  
  109.  
  110. 1329679
  111. Labels of grayed out buttons don't print
  112.  
  113. Labels of grayed out buttons don't print (because we use pictures to print Mac controls).
  114.  
  115.  
  116. 1332644
  117. FW_CListBox scrollbar doesn't print
  118.  
  119. Basic printing of a list box works except for the scrollbar.
  120.  
  121.  
  122. 1336104
  123. Controls don't work well in multiple facets
  124.  
  125. Embed ODFForm in ODFEmbed and explode in 4 facets... everything is not working quite right because native controls are difficult to handle in multiple facets.
  126.  
  127.  
  128. 1340299
  129. Deleting the target view doesn't reset the frame's target
  130.  
  131. When you delete a view, the framework doesn't check whether that view is the input target. So if you have, for example, an active edit view, and you delete it, there will still be a dangling reference to the view you deleted. Next time you try to make a menu selection, you will crash.
  132.  
  133. The work-around is to add this in the class destructor of View objects that are deleted explicitely by the user:
  134.  
  135. ~CMyView()
  136. {
  137.      if (this == GetFrame(ev)->GetTarget(ev))
  138.           ResignTarget(ev);
  139. }
  140.  
  141.  
  142. 1326238
  143. Controls always have white background color.
  144.  
  145. The background color of controls is always white. When displaying controls in a colored area, you need controls whose background color conforms to the surrounding area.
  146.  
  147. The work-around is to define a color table for the frame's window in the FacetAdded() method (see CPwdDialogFrame::FacetAdded() in the Form  example), it will be used by the controls too.
  148. Or else define a color table for individual controls.
  149.  
  150.  
  151. 1334156
  152. FW_CEditView doesn't support  Undo
  153.  
  154. The edit menu items Select All and Undo are not supported by FW_CEditView.
  155.  
  156. SelectAll works, Our test part was disabling the command.
  157. Undo is not supported for now in FW_CEditView.
  158.  
  159.  
  160. 1340419
  161. No notification for list box selection
  162.  
  163. Currently, FW_CListbox will send a notification when an item is double clicked but no notification when an item  is selected. 
  164.  
  165. Sometimes you need to be notified when an item gets selected. You may for example want a change in the listbox selection to change the state of another control. In a typical font dialog, there is a list box with built-in fontsizes an a text edit view that lets you type in any font size. When a font size is selected in the list, the text edit field changes accordingly.
  166.  
  167. The Mac List manager doesn't tell us when a cell is being selected.  ::LClick handles the mouse click internally and returns true only when a double-click occurs.
  168. One work-around to detect selection on a mouse down is to implement a mouse behavior like the one done in FormView.cpp in the Form sample
  169.  
  170.  
  171. 1341815
  172. Need API to change Scroller's scroll units
  173.  
  174. In ODF 1 the only way to change a scroller's scroll unit (minor and major) is to override GetScrollUnits in a subclass of FW_CScroller.  Scroll units are hard coded as follows:
  175.  minor = 1/10 of the visible content size in the same direction
  176.  major = the visible content size in the same direction.
  177.  
  178. Additional comment:
  179. I think the scroller should ask the content view what the scroll units are.  I know this is not easy because of indirect connection, but from an ODF user point of view, it makes sense because the content view knows its layout. The scroller does not have to.
  180.  
  181.  
  182. 1342164
  183. FW_CListBox always uses white color to erase the target border
  184.  
  185. When a list box resigns the target, it uses white color to erase the target border. This is not what you want if the background is not white.
  186.  
  187.  
  188. 1330858
  189. Crash during FW_CBitmap creation
  190.  
  191. If you create a bitmap context ( on stack ) and after (the next  line - before it is destructed ) try to create a bitmap from the FW_PPicture - system crashes.
  192.  
  193. This is a problem in FW_CGraphicContext which uses SetPort instead of SetGWorld.
  194.  
  195.  
  196. 1326552
  197. Zoomed ODFDraw border not respected by ODFClock
  198.  
  199. Embed ODFClock (analog) in ODFDraw.  Zoom ODFDraw to 200%.  Position clock so it extends beyond the right edge of the drawing area.  As the second hand sweeps by it will intrude into the vertical scroll bar slightly.
  200.  
  201. Less reproducible but I'd swear I've seen it:  intrusion into the horizontal scroll bar; and a 1-pixel whitespace gap between the second hand and the rulers at top or left.
  202.  
  203. It might be an OpenDoc Imaging bug but the only tool we have to reproduce it right now is ODFDraw, so we’re starting by assigning it to that component.
  204.  
  205.  
  206.  
  207. 1344763
  208. 68K ODF parts crash on a system with QuickDraw GX installed.
  209.  
  210.  
  211.  
  212.  
  213.  
  214. © 1993 - 1996 Apple Computer, Inc. All rights reserved.
  215. Apple, the Apple Logo, Macintosh, and OpenDoc are trademarks of Apple Computer, Inc., registered in the United States and other countries.